home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / asmexam.arc / STRING.LST < prev    next >
File List  |  1984-08-09  |  4KB  |  100 lines

  1.  The Microsoft MACRO Assembler             08-09-84        PAGE    1-1
  2.  
  3.  
  4.  
  5.                          PAGE 55,132
  6.  0000                   CODE    SEGMENT PARA
  7.                          ASSUME CS:CODE,DS:CODE,ES:CODE
  8.                     
  9.  0000  4849              XWORD   DW 4849H
  10.  0002  3132              XWORD1  DW 3132H
  11.  0004  ????              XWORD2  DW ?
  12.  0006  41              XBYTE   DB 'A'
  13.  0007  54 48 49 53 20 49    XBYTE1  DB 'THIS IS A STRING OF LENGTH 29'
  14.        53 20 41 20 53 54    
  15.        52 49 4E 47 20 4F    
  16.        46 20 4C 45 4E 47    
  17.        54 48 20 32 39         
  18.  0024     1D [              XBYTE2  DB 29 DUP(?)
  19.                 ??         
  20.                     ]         
  21.                     
  22.  0041  0000 ---- R         AXW     DD XWORD
  23.  0045  0002 ---- R         AXW1    DD XWORD1
  24.  0049  0004 ---- R         AXW2    DD XWORD2
  25.  004D  0006 ---- R         AXB     DD XBYTE
  26.  0051  0007 ---- R         AXB1    DD XBYTE1
  27.  0055  0024 ---- R         AXB2    DD XBYTE2
  28.                     
  29.  0100                        ORG 100H
  30.  0100                   START:
  31.  0100  C5 36 004D R              LDS   SI,AXB       ; LOAD DS:SI REG WITH ADDRESS OF XBYTE
  32.  0104  AC                   LODS  XBYTE        ; LOAD AL FROM [DS::SI]
  33.  0105  C5 36 0041 R              LDS   SI,AXW
  34.  0109  AD                   LODS  XWORD        ; LOAD AX FROM [DS::SI]
  35.  010A  C5 36 0045 R              LDS   SI,AXW1
  36.  010E  AC                   LODSB              ; LOAD AL FROM [DS::SI]
  37.                     
  38.  010F  C4 3E 0055 R              LES   DI,AXB2
  39.  0113  B9 0002                   MOV   CX,2
  40.  0116  AA                   STOS  XBYTE        ; STORE AL AT [ES::DI]
  41.  0117  AB                   STOS  XWORD        ; STORE AX AT [ES::DI]
  42.  0118  AB                   STOSW              ; STORE AX AT [ES::DI]
  43.  0119  F3/ AA                   REP  STOSB         ;  STORE AL AT ES:DI FOR CX TIMES
  44.                     
  45.  011B  A4                   MOVS XBYTE2,XBYTE1 ; MOV BYTE ES:DI <-- DS:SI
  46.  011C  A5                   MOVS XWORD2,XWORD1 ; MOV WORD ES:DI <-- DS:SI
  47.  011D  A4                   MOVSB              ; MOV BYTE ES:DI <-- DS:SI
  48.                     
  49.  011E  B9 0003                   MOV CX,3
  50.  0121  F3/ A5                   REP MOVSW          ; REPEAT MOVSW CX TIMES
  51.                     
  52.  0123  AE                   SCAS  XBYTE        ; TEST AL WITH THE BYTE AT ES:DI
  53.  0124  F3/ AE                   REPE  SCASB        ; REPEAT STRING COMPARE WHILE =
  54.  0126  F2/ AF                   REPNE SCASW        ; REPEAT STRING COMPARE WHILE <>
  55.  The Microsoft MACRO Assembler             08-09-84        PAGE    1-2
  56.  
  57.  
  58.  
  59.                     
  60.  0128  A7                   CMPS XWORD,XWORD1  ; COMPARE WORD AT DS:SI TO ES:DI
  61.  0129  B9 0001                   MOV CX,1
  62.  012C  F3/ A7                   REPE  CMPSW        ; COMPARE WORDS WHILE = AND CX <> 0
  63.  012E  B9 0001                   MOV CX,1
  64.  0131  F2/ A6                   REPNE CMPSB        ; COMPARE BYTES WHILE <> AND CX <> 0
  65.                     
  66.  0133                   CODE    ENDS
  67.                          END START
  68.  
  69.  The Microsoft MACRO Assembler             08-09-84        PAGE    Symbols-1
  70.  
  71.  
  72.  
  73. Segments and groups:
  74.  
  75.          N a m e              Size    align    combine    class
  76.  
  77. CODE . . . . . . . . . . . . . .    0133    PARA      NONE    
  78.  
  79. Symbols:            
  80.  
  81.          N a m e              Type    Value    Attr         
  82.  
  83. AXB. . . . . . . . . . . . . . .    L DWORD    004D    CODE
  84. AXB1 . . . . . . . . . . . . . .    L DWORD    0051    CODE
  85. AXB2 . . . . . . . . . . . . . .    L DWORD    0055    CODE
  86. AXW. . . . . . . . . . . . . . .    L DWORD    0041    CODE
  87. AXW1 . . . . . . . . . . . . . .    L DWORD    0045    CODE
  88. AXW2 . . . . . . . . . . . . . .    L DWORD    0049    CODE
  89. START. . . . . . . . . . . . . .    L NEAR     0100    CODE
  90. XBYTE. . . . . . . . . . . . . .    L BYTE     0006    CODE
  91. XBYTE1 . . . . . . . . . . . . .    L BYTE     0007    CODE
  92. XBYTE2 . . . . . . . . . . . . .    L BYTE     0024    CODE    Length =001D
  93. XWORD. . . . . . . . . . . . . .    L WORD     0000    CODE
  94. XWORD1 . . . . . . . . . . . . .    L WORD     0002    CODE
  95. XWORD2 . . . . . . . . . . . . .    L WORD     0004    CODE
  96.  
  97. Warning Severe
  98. Errors    Errors 
  99. 0    0
  100.